home *** CD-ROM | disk | FTP | other *** search
-
- *** README file for Extended Tcl 7.3a ***
-
- EXTENDED TCL
- ============
-
- Extended Tcl (TclX), is a set of extensions to Tcl 7.3, the Tool
- Command Language invented by Dr. John Ousterhout of the University
- of California at Berkeley. Tcl is a powerful, yet simple embeddable
- programming language. Extended Tcl is oriented towards Unix system
- programming tasks, with many additional interfaces to the Unix
- operating system, It is upwardly compatible with Tcl 7.3. You take
- the Extended Tcl package, add it to Tcl 7.3, and from that you get
- Extended Tcl. (Berkeley Tcl is not included in this distribution,
- obtain it from ftp.cs.berkeley.edu).
-
- Support is also included for building a Tk 3.6 wish shell (wishx)
- with the Extended Tcl command set.
-
- While this TclX distribution is tested with Tcl 7.3 and Tk 3.6, it will
- probably work with new versions of Tcl & Tk with little or no changes.
-
- Extended Tcl was designed and implemented by Karl Lehenbauer
- (karl@NeoSoft.com) and Mark Diekhans (markd@Grizzly.com), with help
- in the early stages from Peter da Silva (peter@NeoSoft.com).
-
- As with Berkeley Tcl, all of Extended Tcl is freely
- redistributable, including for commercial use and resale.
-
- Please read the file INSTALL carefully before building and
- installing Extended Tcl.
-
-
- FEATURES ADDED BY EXTENDED TCL
- ==============================
-
- Here is a summary of the features added by Extended Tcl. For
- more details on the commands and functionality provided by Extended
- Tcl, see the manual page man/TclX.man.
-
- o A shell, which provides an environment for developing and
- executing Tcl programs.
-
- o Advanced Tcl code library facility that is compatible with
- standard Tcl auto-loading.
-
- o General purpose commands which define new programming
- constructs, debugging and profiling facilities.
-
- o Unix access commands provide access to many Unix system calls,
- including process management.
-
- o File I/O commands provide added facilities for accessing and
- manipulating open files.
-
- o File scanning facility that provides awk-like functionality.
-
- o Extended list manipulation commands.
-
- o Keyed lists, a type of list that provides functionality
- similar to C structures.
-
- o Extended string and character manipulation commands.
-
- o Time and date manipulation and conversion commands.
-
- o A simple command for accessing TCP/IP based servers.
-
- o X/PG based internationalization commands.
-
- ON-LINE HELP
- ============
-
- There is a help system included with Extended Tcl. It contains
- some documentation on every command in Berkeley Tcl, Extended Tcl
- and Tk. You can invoke it interactively from within Extended Tcl by
- typing "help".
-
- Once you bring Tcl up and have gotten it to pass all the tests,
- try typing "help help" to learn how to use help.
-
- There is also a Tk based help program "tclhelp".
-
- MANUAL PAGES
- ============
-
- Man pages in nroff/troff format are provided for all of Tcl and
- the extensions in the directory tclX7.3a*/man. Start with the
- TclX.man manual.
-
- EXTENDED TCL VERSION NAMING
- ===========================
-
- Extended Tcl takes its version number from the corresponding
- version of Berkeley (Ousterhout) Tcl upon which it is based, with
- the addition of a trailing letter in case there are multiple
- releases of Extended Tcl within a single release of Berkeley Tcl.
- This release is TclX 7.3a.
-
- INTERFACING TCL AND C++
- =======================
-
- C++ programmers can include the file "tcl++.h" to define C++ classes
- that can be used to access a Tcl interpreter. This is based on Tcl
- C++ classes originally developed by Parag Patel. The files
-
- src/tclXmain.c
- and
- tksrc/tkXmain.c
-
- will compile under both C and C++. If your have a C++ compiler that
- requires the main to be compiled with C++ (g++ does not have this
- restriction), use these files renamed to have the correct suffix for
- C++ (usually .C).
-
- PACKAGE LIBRARIES
- =================
-
- Package Libraries are a Tcl source code management tool included
- in this release. Package libraries allow you to group Tcl
- procedures into logical bundles and create single files, libraries,
- that contain multiple packages. The package code provides a
- low-overhead means of automatically demand-loading a package on the
- first attempt to execute one of the procedures defined within it.
- As such, package libraries provide a mechanism to accommodate the
- creation of Tcl applications and libraries of a substantial size.
- The TclX library mechanism is a super-set of the mechanism provided
- with standard Tcl.
-
- LINKING TCL APPLICATIONS
- ========================
-
- To build a TclX based application containing C code, start with
- either:
-
- tclmaster/src/tclXAppInit.c for just TclX
- or
- tkmaster/src/tkXAppInit.c for TclX & Tk
-
- and add your application initialization. There are comments in the
- code to guide you. The "main" object file is already in the
- libraries, all you have to do is link a customized tclXAppInit.o or
- tkXAppInit.o file with your application and the Tcl libraries. For
- example:
-
- cc tclXAppInit.o mystuff.a libtclx.a libtcl.a ${SYSLIBS} -o myapp
-
- cc tkXAppInit.o mystuff.a libtkx.a libtk.a libtclx.a libtcl.a ${SYSLIBS} \
- -o myapp
-
- Each of those directories has a file SYSLIBS that contains the
- system libraries that the TclX configure script thinks you should
- use for linking programs. These file are in a format that can be included
- from a make file.
-
- IMPORTANT NOTE: libtclx.a must be specified on the link command line
- before libtcl.a. If the order is reversed, incorrect command line
- parsing code will be used.
-
- SUPPORT FOR EXTENDED TCL
- ========================
-
- We are committed to providing continuing support for Extended
- Tcl. Please send questions, bug reports, and bug fixes to:
-
- tcl-project@NeoSoft.com
-
- COMPATIBILITY WITH TclX 6.5c
- ============================
-
- We have attempted to main backwards-compatibility with older
- versions of TclX. A few changes were made to enhance usability or
- fix problems that have introduced a few incompatibilities, these are
- listed below. Remember that multiple versions of Tcl may be
- installed on a system using the Tcl default file, so you don't have
- to convert everything at once. See the CHANGES file for full
- details. These are the major incompatible changes:
-
- o TclX auto loading has been made compatible with standard Tcl.
- The path is now found in the "auto_path" variable instead of
- "TCLPATH". The "demand_load" function has been renamed
- "auto_load" and "load" has been renamed "auto_load_file".
- The "autoload" procedure no longer exists.
- o The variable programName was changed to argv0 for compatibility
- with Tcl.
- o Removed outdated execvp proc, use execl directly.
- o Removed "flush" option on "cmdtrace". Output lines are now
- flushed after each command is traced.
- o Changed "signal trap" to edit the command, replacing %S with
- the signal name rather than storing in the global variable
- "signalReceived". This fixes bugs with signals received in
- a signal handler.
-
- WHERE TO GET IT
- ===============
-
- Tcl & Tk is available via anonymous ftp from:
-
- ftp.cs.berkeley.edu:/ucb/tcl/[tcl7.3.tar.Z tk3.6.tar.Z]
- or
- ftp.neosoft.com:/pub/tcl/distrib/[tcl7.3.tar.gz tk3.6.tar.gz]
- or
- ftp.uu.net:languages/tcl/[tcl7.3.tar.Z tk3.6.tar.Z]
-
- Extended Tcl 7.3a can be downloaded by anonymous FTP from:
-
- ftp.neosoft.com:/pub/tcl/distrib/tclX7.3a.tar.gz
- or
- harbor.ecn.purdue.edu:tcl/extensions/tclX7.3a.tar.Z
-
- A contributed sources archive resides on harbor.ecn.purdue.edu and
- is mirrored on ftp.ibp.fr for our friends in Europe. An Frequently
- Asked Questions (FAQ) document exists in this archive.
-
- Remember to mail Extended Tcl problems and questions to
- tcl-project@NeoSoft.com not Dr. John Ousterhout.
-
- THANKS
- ======
-
- A big thanks to all of the Extended Tcl users from all over the world
- who have helped us debug problems and given us valuable suggestions.
- A special thanks to John Ousterhout for Tcl, Tk and all the support he
- has given us.
-
-
- NEOSOFT TCL CONSULTING
- ======================
-
- NeoSoft, co-developers of Extended Tcl, provides commercial Tcl
- releases, support, training and consulting. NeoSoft can be reached
- by sending electronic mail to info@NeoSoft.com or by phoning
- +1 713 684 5969.
-